std::decay_t — один из самых полезных type traits в C++. Он имитирует процесс передачи параметра по значению, «разрушая» исходный тип.
🔄Что именно делает decay_t?
• Убирает cv-квалификаторы • Превращает ссылки в соответствующие типы без ссылок • Преобразует массивы в указатели • Преобразует функции в указатели на функции
💻Пример:
#include <type_traits> #include <iostream>
int main() { // const int& -> int static_assert(std::is_same_v<std::decay_t<const int&>, int>);
std::cout << "All assertions passed!" << std::endl; }
🚀Где это используется?
• В шаблонном программировании для упрощения работы с типами • В std::make_shared и std::make_unique для определения типа создаваемого объекта • При написании обобщенного кода, где нужна правильная дедукция типов
🔍 И да, название «decay» («разрушение») действительно отражает суть — тип «разрушается» до базового представления!
std::decay_t — один из самых полезных type traits в C++. Он имитирует процесс передачи параметра по значению, «разрушая» исходный тип.
🔄Что именно делает decay_t?
• Убирает cv-квалификаторы • Превращает ссылки в соответствующие типы без ссылок • Преобразует массивы в указатели • Преобразует функции в указатели на функции
💻Пример:
#include <type_traits> #include <iostream>
int main() { // const int& -> int static_assert(std::is_same_v<std::decay_t<const int&>, int>);
std::cout << "All assertions passed!" << std::endl; }
🚀Где это используется?
• В шаблонном программировании для упрощения работы с типами • В std::make_shared и std::make_unique для определения типа создаваемого объекта • При написании обобщенного кода, где нужна правильная дедукция типов
🔍 И да, название «decay» («разрушение») действительно отражает суть — тип «разрушается» до базового представления!
Cryptoassets enthusiasts use this application for their trade activities, and they may make donations for this cause.If somehow Telegram do run out of money to sustain themselves they will probably introduce some features that will not hinder the rudimentary principle of Telegram but provide users with enhanced and enriched experience. This could be similar to features where characters can be customized in a game which directly do not affect the in-game strategies but add to the experience.
China’s stock markets are some of the largest in the world, with total market capitalization reaching RMB 79 trillion (US$12.2 trillion) in 2020. China’s stock markets are seen as a crucial tool for driving economic growth, in particular for financing the country’s rapidly growing high-tech sectors.Although traditionally closed off to overseas investors, China’s financial markets have gradually been loosening restrictions over the past couple of decades. At the same time, reforms have sought to make it easier for Chinese companies to list on onshore stock exchanges, and new programs have been launched in attempts to lure some of China’s most coveted overseas-listed companies back to the country.